Micron Document
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
| SparkN0de-git | SparkN0de |
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Commit 8b021f477e2ee76466b319f2eee2a24b177becae


Parents : 81dea45
Author : Ivan <ivan@quad4.io>
Signature : Signature validation error
Date : 2026-04-16T03:44:20-05:00

chore(android): update dependencies for aiohttp, psutil, and websockets; add new recipes for bcrypt and psutil

Changes
Diff

diff --git a/android/app/build.gradle b/android/app/build.gradle
index c55a8632..95cf2a96 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -111,7 +111,7 @@ chaquopy {
throw new org.gradle.api.GradleException("Missing vendor wheel directory at ${vendorWheelDir}")
}
options "--find-links", vendorWheelDir.absolutePath
- install "aiohttp==3.10.10"
+ install "aiohttp==3.13.3"
install "rns>=1.1.5"
install "lxmf>=0.9.4"
install "numpy==1.26.2"
@@ -121,8 +121,8 @@ chaquopy {
throw new org.gradle.api.GradleException("Missing patched LXST wheel at ${lxstPatchedWheel}")
}
install lxstPatchedWheel.absolutePath
- install "psutil>=7.1.3"
- install "websockets>=15.0.1"
+ install "psutil>=7.2.2"
+ install "websockets>=16.0"
install "bcrypt==3.1.7"
install "aiohttp-session>=2.12.1,<3.0.0"
install "cryptography==46.0.7"

diff --git a/android/chaquopy-recipes/aiohttp-3.13/meta.yaml b/android/chaquopy-recipes/aiohttp-3.13/meta.yaml
new file mode 100644
index 00000000..0f211f4a
--- /dev/null
+++ b/android/chaquopy-recipes/aiohttp-3.13/meta.yaml
@@ -0,0 +1,3 @@
+package:
+ name: aiohttp
+ version: "3.13.3"

diff --git a/android/chaquopy-recipes/bcrypt-5/meta.yaml b/android/chaquopy-recipes/bcrypt-5/meta.yaml
new file mode 100644
index 00000000..37cd2036
--- /dev/null
+++ b/android/chaquopy-recipes/bcrypt-5/meta.yaml
@@ -0,0 +1,6 @@
+package:
+ name: bcrypt
+ version: "5.0.0"
+
+build:
+ number: 0

diff --git a/android/chaquopy-recipes/psutil-7.2/meta.yaml b/android/chaquopy-recipes/psutil-7.2/meta.yaml
new file mode 100644
index 00000000..406ac28b
--- /dev/null
+++ b/android/chaquopy-recipes/psutil-7.2/meta.yaml
@@ -0,0 +1,6 @@
+package:
+ name: psutil
+ version: "7.2.2"
+
+build:
+ number: 1

diff --git a/android/chaquopy-recipes/psutil-7.2/patches/chaquopy.patch b/android/chaquopy-recipes/psutil-7.2/patches/chaquopy.patch
new file mode 100644
index 00000000..994322d1
--- /dev/null
+++ b/android/chaquopy-recipes/psutil-7.2/patches/chaquopy.patch
@@ -0,0 +1,24 @@
+--- src-original/psutil/_common.py
++++ src/psutil/_common.py
+@@ -76,7 +76,7 @@
+
+ POSIX = os.name == "posix"
+ WINDOWS = os.name == "nt"
+-LINUX = sys.platform.startswith("linux")
++LINUX = sys.platform.startswith(("linux", "android")) # Chaquopy: added "android"
+ MACOS = sys.platform.startswith("darwin")
+ OSX = MACOS # deprecated alias
+ FREEBSD = sys.platform.startswith(("freebsd", "midnightbsd"))
+--- src-original/psutil/_pslinux.py
++++ src/psutil/_pslinux.py
+@@ -1248,6 +1248,10 @@
+ """Return mounted disk partitions as a list of namedtuples."""
+ fstypes = set()
+ procfs_path = get_procfs_path()
++
++ # Chaquopy: /proc/filesystems is blocked by SELinux on API level 28.
++ all = True
++
+ if not all:
+ with open_text(f"{procfs_path}/filesystems") as f:
+ for line in f:


──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────